#ifndef _NE_CIRCLE_H_
#define _NE_CIRCLE_H_

#include <mathematics/Geometry.h>

namespace ne
{
    class NEAPI Circle : public Geometry
    {
        public:
            Circle(const Vector2 &v=Vector2::ZERO, const real r=1.0f, const real b=0.0f, const real e=Math::CIRCLE);

            Circle(const Circle &c);

            Circle& operator = (const Circle &c);

            void redefine(const Vector2 &v=Vector2::ZERO, const real r=1.0f, const real b=0.0f, const real e=Math::CIRCLE);

            virtual GeometryClass getClass() const;

            virtual ~Circle();

        public:
            Vector2 center;
            real radius;
            real beginAngle;
            real endAngle;
    };
}

#endif
